Systems, methods, and devices for electronic spectrum management

ABSTRACT

Systems, methods, and devices enable spectrum management by identifying, classifying, and cataloging signals of interest based on radio frequency measurements. In an embodiment, signals and the parameters of the signals may be identified and indications of available frequencies may be presented to a user. In another embodiment, the protocols of signals may also be identified. In a further embodiment, the modulation of signals, data types carried by the signals, and estimated signal origins may be identified.

CROSS REFERENCE TO RELATED APPLICATIONS

This application claims the benefit of priority to U.S. ProvisionalPatent Application No. 61/789,758 entitled “System and Method forElectronic Spectrum Management” filed Mar. 15, 2013, the entire contentsof which are hereby incorporated by reference.

BACKGROUND

Spectrum management may be the process of regulating the use of radiofrequencies to promote efficient use and gain net social benefit. Aproblem faced in effective spectrum management is the various numbers ofdevices emanating wireless signal propagations at different frequenciesand across different technological standards. Coupled with the differentregulations relating to spectrum usage around the globe effectivespectrum management becomes difficult to obtain and at best can only bereached over a long period of time.

Another problem facing effective spectrum management is the growing needfrom spectrum despite the finite amount of spectrum available. Wirelesstechnologies have exponentially grown in recent years. Consequently,available spectrum has become a valuable resource that must beefficiently utilized. Therefore, systems and methods are needed toeffectively manage and optimize the available spectrum that is beingused.

Most spectrum management devices may be categorized into two primarytypes. The first type is a spectral analyzer where a device isspecifically fitted to run a ‘scanner’ type receiver that is tailored toprovide spectral information for a narrow window of frequencies relatedto a specific and limited type of communications standard, such ascellular communication standard. Problems arise with these narrowlytailored devices as cellular standards change and/or spectrum usechanges impact the spectrum space of these technologies. Changes to thesoftware and hardware for these narrowly tailored devices become toocomplicated, thus necessitating the need to purchase a totally differentand new device. Unfortunately, this type of device is only for aspecific use and cannot be used to alleviate the entire needs of thespectrum management community.

The second type of spectral management device employs a methodology thatrequires bulky, extremely difficult to use processes, and expensiveequipment. In order to attain a broad spectrum management view andcomplete all the necessary tasks, the device ends up becoming aconglomerate of software and hardware devices that is both hard to useand difficult to maneuver from one location to another.

While there may be several additional problems associated with currentspectrum management devices, the problems may be summed up as two majorproblems: 1) most devices are built to inherently only handle specificspectrum technologies such as 900 MHz cellular spectrum while not beingable to mitigate other technologies that may be interfering or competingwith that spectrum, and 2) the other spectrum management devices consistof large spectrum analyzers, database systems, and spectrum managementsoftware that is expensive, too bulky, and too difficult to manage for auser's basic needs.

SUMMARY

The systems, methods, and devices of the various embodiments enablespectrum management by identifying, classifying, and cataloging signalsof interest based on radio frequency measurements. In an embodiment,signals and the parameters of the signals may be identified andindications of available frequencies may be presented to a user. Inanother embodiment, the protocols of signals may also be identified. Ina further embodiment, the modulation of signals, data types carried bythe signals, and estimated signal origins may be identified.

DESCRIPTION OF THE DRAWINGS

The accompanying drawings, which are incorporated herein and constitutepart of this specification, illustrate exemplary embodiments of theinvention, and together with the general description given above and thedetailed description given below, serve to explain the features of theinvention.

FIG. 1 is a system block diagram of a wireless environment suitable foruse with the various embodiments.

FIG. 2A is a block diagram of a spectrum management device according toan embodiment.

FIG. 2B is a schematic logic flow block diagram illustrating logicaloperations which may be performed by a spectrum management deviceaccording to an embodiment.

FIG. 3 is a process flow diagram illustrating an embodiment method foridentifying a signal.

FIG. 4 is a process flow diagram illustrating an embodiment method formeasuring sample blocks of a radio frequency scan.

FIGS. 5A-5C are a process flow diagram illustrating an embodiment methodfor determining signal parameters.

FIG. 6 is a process flow diagram illustrating an embodiment method fordisplaying signal identifications.

FIG. 7 is a process flow diagram illustrating an embodiment method fordisplaying one or more open frequency.

FIG. 8A is a block diagram of a spectrum management device according toanother embodiment.

FIG. 8B is a schematic logic flow block diagram illustrating logicaloperations which may be performed by a spectrum management deviceaccording to another embodiment.

FIG. 9 is a process flow diagram illustrating an embodiment method fordetermining protocol data and symbol timing data.

FIG. 10 is a process flow diagram illustrating an embodiment method forcalculating signal degradation data.

FIG. 11 is a process flow diagram illustrating an embodiment method fordisplaying signal and protocol identification information.

FIG. 12A is a block diagram of a spectrum management device according toa further embodiment.

FIG. 12B is a schematic logic flow block diagram illustrating logicaloperations which may be performed by a spectrum management deviceaccording to a further embodiment.

FIG. 13 is a process flow diagram illustrating an embodiment method forestimating a signal origin based on a frequency difference of arrival.

FIG. 14 is a process flow diagram illustrating an embodiment method fordisplaying an indication of an identified data type within a signal.

FIG. 15 is a process flow diagram illustrating an embodiment method fordetermining modulation type, protocol data, and symbol timing data.

FIG. 16 is a process flow diagram illustrating an embodiment method fortracking a signal origin.

DETAILED DESCRIPTION

The various embodiments will be described in detail with reference tothe accompanying drawings. Wherever possible, the same reference numberswill be used throughout the drawings to refer to the same or like parts.References made to particular examples and implementations are forillustrative purposes, and are not intended to limit the scope of theinvention or the claims.

The word “exemplary” is used herein to mean “serving as an example,instance, or illustration.” Any implementation described herein as“exemplary” is not necessarily to be construed as preferred oradvantageous over other implementations.

The systems, methods, and devices of the various embodiments enablespectrum management by identifying, classifying, and cataloging signalsof interest based on radio frequency measurements. In an embodiment,signals and the parameters of the signals may be identified andindications of available frequencies may be presented to a user. Inanother embodiment, the protocols of signals may also be identified. Ina further embodiment, the modulation of signals, data types carried bythe signals, and estimated signal origins may be identified.

Embodiments are directed to a spectrum management device that may beconfigurable to obtain spectrum data over a wide range of wirelesscommunication protocols. Embodiments may also provide for the ability toacquire data from and sending data to database depositories that may beused by a plurality of spectrum management customers.

In one embodiment, a spectrum management device may include a signalspectrum analyzer that may be coupled with a database system andspectrum management interface. The device may be portable or may be astationery installation and may be updated with data to allow the deviceto manage different spectrum information based on frequency, bandwidth,signal power, time, and location of signal propagation, as well asmodulation type and format and to provide signal identification,classification, and geo-location. A processor may enable the device toprocess spectrum power density data as received and to process raw I/Qcomplex data that may be used for further signal processing, signalidentification, and data extraction.

In an embodiment, a spectrum management device may comprise a low noiseamplifier that receives a radio frequency (RF) energy from an antenna.The antenna may be any antenna structure that is capable of receiving RFenergy in a spectrum of interest. The low noise amplifier may filter andamplify the RF energy. The RF energy may be provided to an RFtranslator. The RF translator may perform a fast Fourier transform (FFT)and either a square magnitude or a fast convolution spectral periodogramfunction to convert the RF measurements into a spectral representation.In an embodiment, the RF translator may also store a timestamp tofacilitate calculation of a time of arrival and an angle of arrival. TheIn-Phase and Quadrature (I/Q) data may be provided to a spectralanalysis receiver or it may be provided to a sample data store where itmay be stored without being processed by a spectral analysis receiver.The input RF energy may also be directly digital down-converted andsampled by an analog to digital converter (ADC) to generate complex I/Qdata. The complex I/Q data may be equalized to remove multipath, fading,white noise and interference from other signaling systems by fastparallel adaptive filter processes. This data may then be used tocalculate modulation type and baud rate. Complex sampled I/Q data mayalso be used to measure the signal angle of arrival and time of arrival.Such information as angle of arrival and time of arrival may be used tocompute more complex and precise direction finding. In addition, theymay be used to apply geo-location techniques. Data may be collected fromknown signals or unknown signals and time spaced in order to provideexpedient information. I/Q sampled data may contain raw signal data thatmay be used to demodulate and translate signals by streaming them to asignal analyzer or to a real-time demodulator software defined radiothat may have the newly identified signal parameters for the signal ofinterest. The inherent nature of the input RF allows for any type ofsignal to be analyzed and demodulated based on the reconfiguration ofthe software defined radio interfaces.

A spectral analysis receiver may be configured to read raw In-Phase (I)and Quadrature (Q) data and either translate directly to spectral dataor down convert to an intermediate frequency (IF) up to half the Nyquistsampling rate to analyze the incoming bandwidth of a signal. Thetranslated spectral data may include measured values of signal energy,frequency, and time. The measured values provide attributes of thesignal under review that may confirm the detection of a particularsignal of interest within a spectrum of interest. In an embodiment, aspectral analysis receiver may have a referenced spectrum input of 0 Hzto 12.4 GHz with capability of fiber optic input for spectrum input upto 60 GHz.

In an embodiment, the spectral analysis receiver may be configured tosample the input RF data by fast analog down-conversion of the RFsignal. The down-converted signal may then be digitally converted andprocessed by fast convolution filters to obtain a power spectrum. Thisprocess may also provide spectrum measurements including the signalpower, the bandwidth, the center frequency of the signal as well as aTime of Arrival (TOA) measurement. The TOA measurement may be used tocreate a timestamp of the detected signal and/or to generate a timedifference of arrival iterative process for direction finding and fasttriangulation of signals. In an embodiment, the sample data may beprovided to a spectrum analysis module. In an embodiment, the spectrumanalysis module may evaluate the sample data to obtain the spectralcomponents of the signal.

In an embodiment, the spectral components of the signal may be obtainedby the spectrum analysis module from the raw I/Q data as provided by anRF translator. The I/Q data analysis performed by the spectrum analysismodule may operate to extract more detailed information about thesignal, including by way of example, modulation type (e.g., FM, AM,QPSK, 16QAM, etc.) and/or protocol (e.g., GSM, CDMA, OFDM, LTE, etc.).In an embodiment, the spectrum analysis module may be configured by auser to obtain specific information about a signal of interest. In analternate embodiment, the spectral components of the signal may beobtained from power spectral component data produced by the spectralanalysis receiver.

In an embodiment, the spectrum analysis module may provide the spectralcomponents of the signal to a data extraction module. The dataextraction module may provide the classification and categorization ofsignals detected in the RF spectrum. The data extraction module may alsoacquire additional information regarding the signal from the spectralcomponents of the signal. For example, the data extraction module mayprovide modulation type, bandwidth, and possible system in useinformation. In another embodiment, the data extraction module mayselect and organize the extracted spectral components in a formatselected by a user.

The information from the data extraction module may be provided to aspectrum management module. The spectrum management module may generatea query to a static database to classify a signal based on itscomponents. For example, the information stored in static database maybe used to determine the spectral density, center frequency, bandwidth,baud rate, modulation type, protocol (e.g., GSM, CDMA, OFDM, LTE, etc.),system or carrier using licensed spectrum, location of the signalsource, and a timestamp of the signal of interest. These data points maybe provided to a data store for export. In an embodiment and as morefully described below, the data store may be configured to accessmapping software to provide the user with information on the location ofthe transmission source of the signal of interest. In an embodiment, thestatic database includes frequency information gathered from varioussources including, but not limited to, the Federal CommunicationCommission, the International Telecommunication Union, and data fromusers. As an example, the static database may be an SQL database. Thedata store may be updated, downloaded or merged with other devices orwith its main relational database. Software API applications may beincluded to allow database merging with third-party spectrum databasesthat may only be accessed securely.

In the various embodiments, the spectrum management device may beconfigured in different ways. In an embodiment, the front end of systemmay comprise various hardware receivers that may provide In-Phase andQuadrature complex data. The front end receiver may include API setcommands via which the system software may be configured to interface(i.e., communicate) with a third party receiver. In an embodiment, thefront end receiver may perform the spectral computations using FFT (FastFourier Transform) and other DSP (Digital Signal Processing) to generatea fast convolution periodogram that may be re-sampled and averaged toquickly compute the spectral density of the RF environment.

In an embodiment, cyclic processes may be used to average and correlatesignal information by extracting the changes inside the signal to betteridentify the signal of interest that is present in the RF space. Acombination of amplitude and frequency changes may be measured andaveraged over the bandwidth time to compute the modulation type andother internal changes, such as changes in frequency offsets, orthogonalfrequency division modulation, changes in time (e.g., Time DivisionMultiplexing), and/or changes in I/Q phase rotation used to compute thebaud rate and the modulation type. In an embodiment, the spectrummanagement device may have the ability to compute several processes inparallel by use of a multi-core processor and along with severalembedded field programmable gate arrays (FPGA). Such multi-coreprocessing may allow the system to quickly analyze several signalparameters in the RF environment at one time in order to reduce theamount of time it takes to process the signals. The amount of signalscomputed at once may be determined by their bandwidth requirements.Thus, the capability of the system may be based on a maximum frequencyFs/2. The number of signals to be processed may be allocated based ontheir respective bandwidths. In another embodiment, the signal spectrummay be measured to determine its power density, center frequency,bandwidth and location from which the signal is emanating and a bestmatch may be determined based on the signal parameters based oninformation criteria of the frequency.

In another embodiment, a GPS and direction finding location (DF) systemmay incorporated into the spectrum management device and/or available tothe spectrum management device. Adding GPS and DF ability may enable theuser to provide a location vector using the National Marine ElectronicsAssociation's (NMEA) standard form. In an embodiment, locationfunctionality is incorporated into a specific type of GPS unit, such asa U.S. government issued receiver. The information may be derived fromthe location presented by the database internal to the device, adatabase imported into the device, or by the user inputting geo-locationparameters of longitude and latitude which may be derived as degrees,minutes and seconds, decimal minutes, or decimal form and translated tothe necessary format with the default being ‘decimal’ form. Thisfunctionality may be incorporated into a GPS unit. The signalinformation and the signal classification may then be used to locate thesignaling device as well as to provide a direction finding capability.

A type of triangulation using three units as a group antennaconfiguration performs direction finding by using multilateration.Commonly used in civil and military surveillance applications,multilateration is able to accurately locate an aircraft, vehicle, orstationary emitter by measuring the “Time Difference of Arrival” (TDOA)of a signal from the emitter at three or more receiver sites. If a pulseis emitted from a platform, it will arrive at slightly different timesat two spatially separated receiver sites, the TDOA being due to thedifferent distances of each receiver from the platform. This locationinformation may then be supplied to a mapping process that utilizes adatabase of mapping images that are extracted from the database based onthe latitude and longitude provided by the geo-location or directionfinding device. The mapping images may be scanned in to show the pointsof interest where a signal is either expected to be emanating from basedon the database information or from an average taken from the databaseinformation and the geo-location calculation performed prior to themapping software being called. The user can control the map to maximizeor minimize the mapping screen to get a better view which is more fit toprovide information of the signal transmissions. In an embodiment, themapping process does not rely on outside mapping software. The mappingcapability has the ability to generate the map image and to populate amapping database that may include information from third party maps tomeet specific user requirements.

In an embodiment, triangulation and multilateration may utilize aBayesian type filter that may predict possible movement and futurelocation and operation of devices based on input collected from the TDOAand geolocation processes and the variables from the static databasepertaining to the specified signal of interest. The Bayesian filtertakes the input changes in time difference and its inverse function(i.e., frequency difference) and takes an average changes in signalvariation to detect and predict the movement of the signals. The signalchanges are measured within 1 ns time difference and the filter may alsoadapt its gradient error calculation to remove unwanted signals that maycause errors due to signal multipath, inter-symbol interference, andother signal noise.

In an embodiment the changes within a 1 ns time difference for eachsample for each unique signal may be recorded. The spectrum managementdevice may then perform the inverse and compute and record the frequencydifference and phase difference between each sample for each uniquesignal. The spectrum management device may take the same signal andcalculates an error based on other input signals coming in within the 1ns time and may average and filter out the computed error to equalizethe signal. The spectrum management device may determine the timedifference and frequency difference of arrival for that signal andcompute the odds of where the signal is emanating from based on thefrequency band parameters presented from the spectral analysis andprocessor computations, and determines the best position from which thesignal is transmitted (i.e., origin of the signal).

FIG. 1 illustrates a wireless environment 100 suitable for use with thevarious embodiments. The wireless environment 100 may include varioussources 104, 106, 108, 110, 112, and 114 generating various radiofrequency (RF) signals 116, 118, 120, 122, 124, 126. As an example,mobile devices 104 may generate cellular RF signals 116, such as CDMA,GSM, 3G signals, etc. As another example, wireless access devices 106,such as Wi-Fi® routers, may generate RF signals 118, such as Wi-Fi®signals. As a further example, satellites 108, such as communicationsatellites or GPS satellites, may generate RF signals 120, such assatellite radio, television, or GPS signals. As a still further example,base stations 110, such as a cellular base station, may generate RFsignals 122, such as CDMA, GSM, 3G signals, etc. As another example,radio towers 112, such as local AM or FM radio stations, may generate RFsignals 124, such as AM or FM radio signals. As another example,government service provides 114, such as police units, fire fighters,military units, air traffic control towers, etc. may generate RF signals126, such as radio communications, tracking signals, etc. The various RFsignals 116, 118, 120, 122, 124, 126 may be generated at differentfrequencies, power levels, in different protocols, with differentmodulations, and at different times. The various sources 104, 106, 108,110, 112, and 114 may be assigned frequency bands, power limitations, orother restrictions, requirements, and/or licenses by a governmentspectrum control entity, such as a the FCC. However, with so manydifferent sources 104, 106, 108, 110, 112, and 114 generating so manydifferent RF signals 116, 118, 120, 122, 124, 126, overlaps,interference, and/or other problems may occur. A spectrum managementdevice 102 in the wireless environment 100 may measure the RF energy inthe wireless environment 100 across a wide spectrum and identify thedifferent RF signals 116, 118, 120, 122, 124, 126 which may be presentin the wireless environment 100. The identification and cataloging ofthe different RF signals 116, 118, 120, 122, 124, 126 which may bepresent in the wireless environment 100 may enable the spectrummanagement device 102 to determine available frequencies for use in thewireless environment 100. In addition, the spectrum management device102 may be able to determine if there are available frequencies for usein the wireless environment 100 under certain conditions (i.e., day ofweek, time of day, power level, frequency band, etc.). In this manner,the RF spectrum in the wireless environment 100 may be managed.

FIG. 2A is a block diagram of a spectrum management device 202 accordingto an embodiment. The spectrum management device 202 may include anantenna structure 204 configured to receive RF energy expressed in awireless environment. The antenna structure 204 may be any type antenna,and may be configured to optimize the receipt of RF energy across a widefrequency spectrum. The antenna structure 204 may be connected to one ormore optional amplifiers and/or filters 208 which may boost, smooth,and/or filter the RF energy received by antenna structure 204 before theRF energy is passed to an RF receiver 210 connected to the antennastructure 204. In an embodiment, the RF receiver 210 may be configuredto measure the RF energy received from the antenna structure 204 and/oroptional amplifiers and/or filters 208. In an embodiment, the RFreceiver 210 may be configured to measure RF energy in the time domainand may convert the RF energy measurements to the frequency domain. Inan embodiment, the RF receiver 210 may be configured to generatespectral representation data of the received RF energy. The RF receiver210 may be any type RF receiver, and may be configured to generate RFenergy measurements over a range of frequencies, such as 0 kHz to 24GHz, 9 kHz to 6 GHz, etc. In an embodiment, the frequency scanned by theRF receiver 210 may be user selectable. In an embodiment, the RFreceiver 210 may be connected to a signal processor 214 and may beconfigured to output RF energy measurements to the signal processor 214.As an example, the RF receiver 210 may output raw In-Phase (I) andQuadrature (Q) data to the signal processor 214. As another example, theRF receiver 210 may apply signals processing techniques to outputcomplex In-Phase (I) and Quadrature (Q) data to the signal processor214. In an embodiment, the spectrum management device may also includean antenna 206 connected to a location receiver 212, such as a GPSreceiver, which may be connected to the signal processor 214. Thelocation receiver 212 may provide location inputs to the signalprocessor 214.

The signal processor 214 may include a signal detection module 216, acomparison module 222, a timing module 224, and a location module 225.Additionally, the signal processor 214 may include an optional memorymodule 226 which may include one or more optional buffers 228 forstoring data generated by the other modules of the signal processor 214.

In an embodiment, the signal detection module 216 may operate toidentify signals based on the RF energy measurements received from theRF receiver 210. The signal detection module 216 may include a FastFourier Transform (FFT) module 217 which may convert the received RFenergy measurements into spectral representation data. The signaldetection module 216 may include an analysis module 221 which mayanalyze the spectral representation data to identify one or more signalsabove a power threshold. A power module 220 of the signal detectionmodule 216 may control the power threshold at which signals may beidentified. In an embodiment, the power threshold may be a default powersetting or may be a user selectable power setting. A noise module 219 ofthe signal detection module 216 may control a signal threshold, such asa noise threshold, at or above which signals may be identified. Thesignal detection module 216 may include a parameter module 218 which maydetermine one or more signal parameters for any identified signals, suchas center frequency, bandwidth, power, number of detected signals,frequency peak, peak power, average power, signal duration, etc. In anembodiment, the signal processor 214 may include a timing module 224which may record time information and provide the time information tothe signal detection module 216. Additionally, the signal processor 214may include a location module 225 which may receive location inputs fromthe location receiver 212 and determine a location of the spectrummanagement device 202. The location of the spectrum management device202 may be provided to the signal detection module 216.

In an embodiment, the signal processor 214 may be connected to one ormore memory 230. The memory 230 may include multiple databases, such asa history or historical database 232 and characteristics listing 236,and one or more buffers 240 storing data generated by signal processor214. While illustrated as connected to the signal processor 214 thememory 230 may also be on chip memory residing on the signal processor214 itself. In an embodiment, the history or historical database 232 mayinclude measured signal data 234 for signals that have been previouslyidentified by the spectrum management device 202. The measured signaldata 234 may include the raw RF energy measurements, time stamps,location information, one or more signal parameters for any identifiedsignals, such as center frequency, bandwidth, power, number of detectedsignals, frequency peak, peak power, average power, signal duration,etc., and identifying information determined from the characteristicslisting 236. In an embodiment, the history or historical database 232may be updated as signals are identified by the spectrum managementdevice 202. In an embodiment, the characteristic listing 236 may be adatabase of static signal data 238. The static signal data 238 mayinclude data gathered from various sources including by way of exampleand not by way of limitation the Federal Communication Commission, theInternational Telecommunication Union, telecom providers, manufacturedata, and data from spectrum management device users. Static signal data238 may include known signal parameters of transmitting devices, such ascenter frequency, bandwidth, power, number of detected signals,frequency peak, peak power, average power, signal duration, geographicinformation for transmitting devices, and any other data that may beuseful in identifying a signal. In an embodiment, the static signal data238 and the characteristic listing 236 may correlate signal parametersand signal identifications. As an example, the static signal data 238and characteristic listing 236 may list the parameters of the local fireand emergency communication channel correlated with a signalidentification indicating that signal is the local fire and emergencycommunication channel.

In an embodiment, the signal processor 214 may include a comparisonmodule 222 which may match data generated by the signal detection module216 with data in the history or historical database 232 and/orcharacteristic listing 236. In an embodiment the comparison module 222may receive signal parameters from the signal detection module 216, suchas center frequency, bandwidth, power, number of detected signals,frequency peak, peak power, average power, signal duration, and/orreceive parameter from the timing module 224 and/or location module 225.The parameter match module 223 may retrieve data from the history orhistorical database 232 and/or the characteristic listing 236 andcompare the retrieved data to any received parameters to identifymatches. Based on the matches the comparison module may identify thesignal. In an embodiment, the signal processor 214 may be optionallyconnected to a display 242, an input device 244, and/or networktransceiver 246. The display 242 may be controlled by the signalprocessor 214 to output spectral representations of received signals,signal characteristic information, and/or indications of signalidentifications on the display 242. In an embodiment, the input device244 may be any input device, such as a keyboard and/or knob, mouse,virtual keyboard or even voice recognition, enabling the user of thespectrum management device 202 to input information for use by thesignal processor 214. In an embodiment, the network transceiver 246 mayenable the spectrum management device 202 to exchange data with wiredand/or wireless networks, such as to update the characteristic listing236 and/or upload information from the history or historical database232.

FIG. 2B is a schematic logic flow block diagram illustrating logicaloperations which may be performed by a spectrum management device 202according to an embodiment. A receiver 210 may output RF energymeasurements, such as I and Q data to a FFT module 252 which maygenerate a spectral representation of the RF energy measurements whichmay be output on a display 242. The I and Q data may also be buffered ina buffer 256 and sent to a signal detection module 216. The signaldetection module 216 may receive location inputs from a locationreceiver 212 and use the received I and Q data to detect signals. Datafrom the signal detection module 216 may be buffered and written into ahistory or historical database 232. Additionally, data from thehistorical database may be used to aid in the detection of signals bythe signal detection module 216. The signal parameters of the detectedsignals may be determined by a signal parameters module 218 usinginformation from the history or historical database 232 and/or a staticdatabase 238 listing signal characteristics. Data from the signalparameters module 218 may be stored in the history or historicaldatabase 232 and/or sent to the signal detection module 216 and/ordisplay 242. In this manner, signals may be detected and indications ofthe signal identification may be displayed to a user of the spectrummanagement device.

FIG. 3 illustrates a process flow of an embodiment method 300 foridentifying a signal. In an embodiment the operations of method 300 maybe performed by the processor 214 of a spectrum management device 202.In block 302 the processor 214 may determine the location of thespectrum management device 202. In an embodiment, the processor 214 maydetermine the location of the spectrum management device 202 based on alocation input, such as GPS coordinates, received from a locationreceiver, such as a GPS receiver 212. In block 304 the processor 214 maydetermine the time. As an example, the time may be the current clocktime as determined by the processor 214 and may be a time associatedwith receiving RF measurements. In block 306 the processor 214 mayreceive RF energy measurements. In an embodiment, the processor 214 mayreceive RF energy measurements from an RF receiver 210. In block 308 theprocessor 214 may convert the RF energy measurements to spectralrepresentation data. As an example, the processor may apply a FastFourier Transform (FFT) to the RF energy measurements to convert them tospectral representation data. In optional block 310 the processor 214may display the spectral representation data on a display 242 of thespectrum management device 202, such as in a graph illustratingamplitudes across a frequency spectrum.

In block 312 the processor 214 may identify one or more signal above athreshold. In an embodiment, the processor 214 may analyze the spectralrepresentation data to identify a signal above a power threshold. Apower threshold may be an amplitude measure selected to distinguish RFenergies associated with actual signals from noise. In an embodiment,the power threshold may be a default value. In another embodiment, thepower threshold may be a user selectable value. In block 314 theprocessor 214 may determine signal parameters of any identified signalor signals of interest. As examples, the processor 214 may determinesignal parameters such as center frequency, bandwidth, power, number ofdetected signals, frequency peak, peak power, average power, signalduration for the identified signals. In block 316 the processor 214 maystore the signal parameters of each identified signal, a locationindication, and time indication for each identified signal in a historydatabase 232. In an embodiment, a history database 232 may be a databaseresident in a memory 230 of the spectrum management device 202 which mayinclude data associated with signals actually identified by the spectrummanagement device.

In block 318 the processor 214 may compare the signal parameters of eachidentified signal to signal parameters in a signal characteristiclisting. In an embodiment, the signal characteristic listing may be astatic database 238 stored in the memory 230 of the spectrum managementdevice 202 which may correlate signal parameters and signalidentifications. In determination block 320 the processor 214 maydetermine whether the signal parameters of the identified signal orsignals match signal parameters in the characteristic listing 236. In anembodiment, a match may be determined based on the signal parametersbeing within a specified tolerance of one another. As an example, acenter frequency match may be determined when the center frequencies arewithin plus or minus 1 kHz of each other. In this manner, differencesbetween real world measured conditions of an identified signal and idealconditions listed in a characteristics listing may be accounted for inidentifying matches. If the signal parameters do not match (i.e.,determination block 320=“No”), in block 326 the processor 214 maydisplay an indication that the signal is unidentified on a display 242of the spectrum management device 202. In this manner, the user of thespectrum management device may be notified that a signal is detected,but has not been positively identified. If the signal parameters domatch (i.e., determination block 320=“Yes”), in block 324 the processor214 may display an indication of the signal identification on thedisplay 242. In an embodiment, the signal identification displayed maybe the signal identification correlated to the signal parameter in thesignal characteristic listing which matched the signal parameter for theidentified signal. Upon displaying the indications in blocks 324 or 326the processor 214 may return to block 302 and cyclically measure andidentify further signals of interest.

FIG. 4 illustrates an embodiment method 400 for measuring sample blocksof a radio frequency scan. In an embodiment the operations of method 400may be performed by the processor 214 of a spectrum management device202. As discussed above, in blocks 306 and 308 the processor 214 mayreceive RF energy measurements and convert the RF energy measurements tospectral representation data. In block 402 the processor 214 maydetermine a frequency range at which to sample the RF spectrum forsignals of interest. In an embodiment, a frequency range may be afrequency range of each sample block to be analyzed for potentialsignals. As an example, the frequency range may 240 kHz. In anembodiment, the frequency range may be a default value. In anotherembodiment, the frequency range be a user selectable value. In block 404the processor 214 may determine a number (N) of sample blocks tomeasure. In an embodiment, each sample block may be sized to thedetermined of default frequency range, and the number of sample blocksmay be determined by dividing the spectrum of the measured RF energy bythe frequency range. In block 406 the processor 214 may assign eachsample block a respective frequency range. As an example, if thedetermined frequency range is 240 kHz, the first sample block may beassigned a frequency range from 0 kHz to 240 kHz, the second sampleblock may be assigned a frequency range from 240 kHz to 480 kHz, etc. Inblock 408 the processor 214 may set the lowest frequency range sampleblock as the current sample block. In block 409 the processor 214 maymeasure the amplitude across the set frequency range for the currentsample block. As an example, at each frequency interval (such as 1 Hz)within the frequency range of the sample block the processor 214 maymeasure the received signal amplitude. In block 410 the processor 214may store the amplitude measurements and corresponding frequencies forthe current sample block. In determination block 414 the processor 214may determine if all sample blocks have been measured. If all sampleblocks have not been measured (i.e., determination block 414=“No”), inblock 416 the processor 214 may set the next highest frequency rangesample block as the current sample block. As discussed above, in blocks409, 410, and 414 the processor 214 may measure and store amplitudes anddetermine whether all blocks are sampled. If all blocks have beensampled (i.e., determination block 414=“Yes”), the processor 214 mayreturn to block 306 and cyclically measure further sample blocks.

FIGS. 5A, 5B, and 5C illustrate the process flow for an embodimentmethod 500 for determining signal parameters. In an embodiment theoperations of method 500 may be performed by the processor 214 of aspectrum management device 202. Referring to FIG. 5A, in block 502 theprocessor 214 may receive a noise floor average setting. In anembodiment, the noise floor average setting may be an average noiselevel for the environment in which the spectrum management device 202 isoperating. In an embodiment, the noise floor average setting may be adefault setting and/or may be user selectable setting. In block 504 theprocessor 214 may receive the signal power threshold setting. In anembodiment, the signal power threshold setting may be an amplitudemeasure selected to distinguish RF energies associated with actualsignals from noise. In an embodiment the signal power threshold may be adefault value and/or may be a user selectable setting. In block 506 theprocessor 214 may load the next available sample block. In anembodiment, the sample blocks may be assembled according to theoperations of method 400 described above with reference to FIG. 4. In anembodiment, the next available sample block may be an oldest in timesample block which has not been analyzed to determine whether signals ofinterest are present in the sample block. In block 508 the processor 214may average the amplitude measurements in the sample block. Indetermination block 510 the processor 214 may determine whether theaverage for the sample block is greater than or equal to the noise flooraverage set in block 502. In this manner, sample blocks includingpotential signals may be quickly distinguished from sample blocks whichmay not include potential signals reducing processing time by enablingsample blocks without potential signals to be identified and ignored. Ifthe average for the sample block is lower than the noise floor average(i.e., determination block 510=“No”), no signals of interest may bepresent in the current sample block. In determination block 514 theprocessor 214 may determine whether a cross block flag is set. If thecross block flag is not set (i.e., determination block 514=“No”), inblock 506 the processor 214 may load the next available sample block andin block 508 average the sample block 508.

If the average of the sample block is equal to or greater than the noisefloor average (i.e., determination block 510=“Yes”), the sample blockmay potentially include a signal of interest and in block 512 theprocessor 214 may reset a measurement counter (C) to 1. The measurementcounter value indicating which sample within a sample block is underanalysis. In determination block 516 the processor 214 may determinewhether the RF measurement of the next frequency sample (C) is greaterthan the signal power threshold. In this manner, the value of themeasurement counter (C) may be used to control which sample RFmeasurement in the sample block is compared to the signal powerthreshold. As an example, when the counter (C) equals 1, the first RFmeasurement may be checked against the signal power threshold and whenthe counter (C) equals 2 the second RF measurement in the sample blockmay be checked, etc. If the C RF measurement is less than or equal tothe signal power threshold (i.e., determination block 516=“No”), indetermination block 517 the processor 214 may determine whether thecross block flag is set. If the cross block flag is not set (i.e.,determination block 517=“No”), in determination block 522 the processor214 may determine whether the end of the sample block is reached. If theend of the sample block is reached (i.e., determination block522=“Yes”), in block 506 the processor 214 may load the next availablesample block and proceed in blocks 508, 510, 514, and 512 as discussedabove. If the end of the sample block is not reached (i.e.,determination block 522=“No”), in block 524 the processor 214 mayincrement the measurement counter (C) so that the next sample in thesample block is analyzed.

If the C RF measurement is greater than the signal power threshold(i.e., determination block 516=“Yes”), in block 518 the processor 214may check the status of the cross block flag to determine whether thecross block flag is set. If the cross block flag is not set (i.e.,determination block 518=“No”), in block 520 the processor 214 may set asample start. As an example, the processor 214 may set a sample start byindicating a potential signal of interest may be discovered in a memoryby assigning a memory location for RF measurements associated with thesample start. Referring to FIG. 5B, in block 526 the processor 214 maystore the C RF measurement in a memory location for the sample currentlyunder analysis. In block 528 the processor 214 may increment themeasurement counter (C) value.

In determination block 530 the processor 214 may determine whether the CRF measurement (e.g., the next RF measurement because the value of theRF measurement counter was incremented) is greater than the signal powerthreshold. If the C RF measurement is greater than the signal powerthreshold (i.e., determination block 530=“Yes”), in determination block532 the processor 214 may determine whether the end of the sample blockis reached. If the end of the sample block is not reached (i.e.,determination block 532=“No”), there may be further RF measurementsavailable in the sample block and in block 526 the processor 214 maystore the C RF measurement in the memory location for the sample. Inblock 528 the processor may increment the measurement counter (C) and indetermination block 530 determine whether the C RF measurement is abovethe signal power threshold and in block 532 determine whether the end ofthe sample block is reached. In this manner, successive sample RFmeasurements may be checked against the signal power threshold andstored until the end of the sample block is reached and/or until asample RF measurement falls below the signal power threshold. If the endof the sample block is reached (i.e., determination block 532=“Yes”), inblock 534 the processor 214 may set the cross block flag. In anembodiment, the cross block flag may be a flag in a memory available tothe processor 214 indicating the signal potential spans across two ormore sample blocks. In a further embodiment, prior to setting the crossblock flag in block 534, the slope of a line drawn between the last twoRF measurement samples may be used to determine whether the next sampleblock likely contains further potential signal samples. A negative slopemay indicate that the signal of interest is fading and may indicate thelast sample was the final sample of the signal of interest. In anotherembodiment, the slope may not be computed and the next sample block maybe analyzed regardless of the slope.

If the end of the sample block is reached (i.e., determination block532=“Yes”) and in block 534 the cross block flag is set, referring toFIG. 5A, in block 506 the processor 214 may load the next availablesample block, in block 508 may average the sample block, and in block510 determine whether the average of the sample block is greater than orequal to the noise floor average. If the average is equal to or greaterthan the noise floor average (i.e., determination block 510=“Yes”), inblock 512 the processor 214 may reset the measurement counter (C) to 1.In determination block 516 the processor 214 may determine whether the CRF measurement for the current sample block is greater than the signalpower threshold. If the C RF measurement is greater than the signalpower threshold (i.e., determination block 516=“Yes”), in determinationblock 518 the processor 214 may determine whether the cross block flagis set. If the cross block flag is set (i.e., determination block518=“Yes”), referring to FIG. 5B, in block 526 the processor 214 maystore the C RF measurement in the memory location for the sample and inblock 528 the processor may increment the measurement counter (C). Asdiscussed above, in blocks 530 and 532 the processor 214 may performoperations to determine whether the C RF measurement is greater than thesignal power threshold and whether the end of the sample block isreached until the C RF measurement is less than or equal to the signalpower threshold (i.e., determination block 530=“No”) or the end of thesample block is reached (i.e., determination block 532=“Yes”). If theend of the sample block is reached (i.e., determination block532=“Yes”), as discussed above in block 534 the cross block flag may beset (or verified and remain set if already set) and in block 535 the CRF measurement may be stored in the sample.

If the end of the sample block is reached (i.e., determination block532=“Yes”) and in block 534 the cross block flag is set, referring toFIG. 5A, the processor may perform operations of blocks 506, 508, 510,512, 516, and 518 as discussed above. If the average of the sample blockis less than the noise floor average (i.e., determination block510=“No”) and the cross block flag is set (i.e., determination block514=“Yes”), the C RF measurement is less than or equal to the signalpower threshold (i.e., determination block 516=“No”) and the cross blockflag is set (i.e., determination block 517=“Yes”), or the C RFmeasurement is less than or equal to the signal power threshold (i.e.,determination block 516=“No”), referring to FIG. 5B, in block 538 theprocessor 214 may set the sample stop. As an example, the processor 214may indicate that a sample end is reached in a memory and/or that asample is complete in a memory. In block 540 the processor 214 maycompute and store complex I and Q data for the stored measurements inthe sample. In block 542 the processor 214 may determine a mean of thecomplex I and Q data. Referring to FIG. 5C, in determination block 544the processor 214 may determine whether the mean of the complex I and Qdata is greater than a signal threshold. If the mean of the complex Iand Q data is less than or equal to the signal threshold (i.e.,determination block 544=“No”), in block 550 the processor 214 mayindicate the sample is noise and discard data associated with the samplefrom memory.

If the mean is greater than the signal threshold (i.e., determinationblock 544=“Yes”), in block 546 the processor 214 may identify the sampleas a signal of interest. In an embodiment, the processor 214 mayidentify the sample as a signal of interest by assigning a signalidentifier to the signal, such as a signal number or sample number. Inblock 548 the processor 214 may determine and store signal parametersfor the signal. As an example, the processor 214 may determine and storea frequency peak of the identified signal, a peak power of theidentified signal, an average power of the identified signal, a signalbandwidth of the identified signal, and/or a signal duration of theidentified signal. In block 552 the processor 214 may clear the crossblock flag (or verify that the cross block flag is unset). In block 556the processor 214 may determine whether the end of the sample block isreached. If the end of the sample block is not reached (i.e.,determination block 556=“No” in block 558 the processor 214 mayincrement the measurement counter (C), and referring to FIG. 5A indetermination block 516 may determine whether the C RF measurement isgreater than the signal power threshold. Referring to FIG. 5C, if theend of the sample block is reached (i.e., determination block556=“Yes”), referring to FIG. 5A, in block 506 the processor 214 mayload the next available sample block.

FIG. 6 illustrates a process flow for an embodiment method 600 fordisplaying signal identifications. In an embodiment, the operations ofmethod 600 may be performed by a processor 214 of a spectrum managementdevice 202. In determination block 602 the processor 214 may determinewhether a signal is identified. If a signal is not identified (i.e.,determination block 602=“No”), in block 604 the processor 214 may waitfor the next scan. If a signal is identified (i.e., determination block602=“Yes”), in block 606 the processor 214 may compare the signalparameters of an identified signal to signal parameters in a historydatabase 232. In determination block 608 the processor 214 may determinewhether signal parameters of the identified signal match signalparameters in the history database 232. If there is no match (i.e.,determination block 608=“No”), in block 610 the processor 214 may storethe signal parameters as a new signal in the history database 232. Ifthere is a match (i.e., determination block 608=“Yes”), in block 612 theprocessor 214 may update the matching signal parameters as needed in thehistory database 232.

In block 614 the processor 214 may compare the signal parameters of theidentified signal to signal parameters in a signal characteristiclisting 236. In an embodiment, the characteristic listing 236 may be astatic database separate from the history database 232, and thecharacteristic listing 236 may correlate signal parameters with signalidentifications. In determination block 616 the processor 214 maydetermine whether the signal parameters of the identified signal matchany signal parameters in the signal characteristic listing 236. In anembodiment, the match in determination 616 may be a match based on atolerance between the signal parameters of the identified signal and theparameters in the characteristic listing 236. If there is a match (i.e.,determination block 616=“Yes”), in block 618 the processor 214 mayindicate a match in the history database 232 and in block 622 maydisplay an indication of the signal identification on a display 242. Asan example, the indication of the signal identification may be a displayof the radio call sign of an identified FM radio station signal. Ifthere is not a match (i.e., determination block 616=“No”), in block 620the processor 214 may display an indication that the signal is anunidentified signal. In this manner, the user may be notified a signalis present in the environment, but that the signal does not match to asignal in the characteristic listing.

FIG. 7 illustrates a process flow of an embodiment method 700 fordisplaying one or more open frequency. In an embodiment, the operationsof method 700 may be performed by the processor 214 of a spectrummanagement device 202. In block 702 the processor 214 may determine acurrent location of the spectrum management device 202. In anembodiment, the processor 214 may determine the current location of thespectrum management device 202 based on location inputs received from alocation receiver 212, such as GPS coordinates received from a GPSreceiver 212. In block 704 the processor 214 may compare the currentlocation to the stored location value in the historical database 232. Asdiscussed above, the historical or history database 232 may be adatabase storing information about signals previously actuallyidentified by the spectrum management device 202. In determination block706 the processor 214 may determine whether there are any matchesbetween the location information in the historical database 232 and thecurrent location. If there are no matches (i.e., determination block706=“No”), in block 710 the processor 214 may indicate incomplete datais available. In other words the spectrum data for the current locationhas not previously been recorded.

If there are matches (i.e., determination block 706=“Yes”), in optionalblock 708 the processor 214 may display a plot of one or more of thesignals matching the current location. As an example, the processor 214may compute the average frequency over frequency intervals across agiven spectrum and may display a plot of the average frequency over eachinterval. In block 712 the processor 214 may determine one or more openfrequencies at the current location. As an example, the processor 214may determine one or more open frequencies by determining frequencyranges in which no signals fall or at which the average is below athreshold. In block 714 the processor 214 may display an indication ofone or more open frequency on a display 242 of the spectrum managementdevice 202.

FIG. 8A is a block diagram of a spectrum management device 802 accordingto an embodiment. Spectrum management device 802 is similar to spectrummanagement device 202 described above with reference to FIG. 2A, exceptthat spectrum management device 802 may include symbol module 816 andprotocol module 806 enabling the spectrum management device 802 toidentify the protocol and symbol information associated with anidentified signal as well as protocol match module 814 to match protocolinformation. Additionally, the characteristic listing 236 of spectrummanagement device 802 may include protocol data 804, environment data810, and noise data 812 and an optimization module 818 may enable thesignal processor 214 to provide signal optimization parameters.

The protocol module 806 may identify the communication protocol (e.g.,LTE, CDMA, etc.) associated with a signal of interest. In an embodiment,the protocol module 806 may use data retrieved from the characteristiclisting, such as protocol data 804 to help identify the communicationprotocol. The symbol detector module 816 may determine symbol timinginformation, such as a symbol rate for a signal of interest. Theprotocol module 806 and/or symbol module 816 may provide data to thecomparison module 222. The comparison module 22 may include a protocolmatch module 814 which may attempt to match protocol information for asignal of interest to protocol data 804 in the characteristic listing toidentify a signal of interest. Additionally, the protocol module 806and/or symbol module 816 may store data in the memory module 226 and/orhistory database 232. In an embodiment, the protocol module 806 and/orsymbol module 816 may use protocol data 804 and/or other data from thecharacteristic listing 236 to help identify protocols and/or symbolinformation in signals of interest.

The optimization module 818 may gather information from thecharacteristic listing, such as noise figure parameters, antennahardware parameters, and environmental parameters correlated with anidentified signal of interest to calculate a degradation value for theidentified signal of interest. The optimization module 818 may furthercontrol the display 242 to output degradation data enabling a user ofthe spectrum management device 802 to optimize a signal of interest.

FIG. 8B is a schematic logic flow block diagram illustrating logicaloperations which may be performed by a spectrum management deviceaccording to an embodiment. Only those logical operations illustrated inFIG. 8B different from those described above with reference to FIG. 2Bwill be discussed. As illustrated in FIG. 8B, as received time tracking850 may be applied to the I and Q data from the receiver 210. Anadditional buffer 851 may further store the I and Q data received and asymbol detector 852 may identify the symbols of a signal of interest anddetermine the symbol rate. A multiple access scheme identifier module854 may identify whether a the signal is part of a multiple accessscheme (e.g., CDMA), and a protocol identifier module 856 may attempt toidentify the protocol the signal of interested is associated with. Themultiple access scheme identifier module 854 and protocol identifiermodule 856 may retrieve data from the static database 238 to aid in theidentification of the access scheme and/or protocol. The symbol detectormodule 852 may pass data to the signal parameter and protocol modulewhich may store protocol and symbol information in addition to signalparameter information for signals of interest.

FIG. 9 illustrates a process flow of an embodiment method 900 fordetermining protocol data and symbol timing data. In an embodiment, theoperations of method 900 may be performed by the processor 214 of aspectrum management device 802. In determination block 902 the processor214 may determine whether two or more signals are detected. If two ormore signals are not detected (i.e., determination block 902=“No”), indetermination block 902 the processor 214 may continue to determinewhether two or more signals are detected. If two or more signals aredetected (i.e., determination block 902=“Yes”), in determination block904 the processor 214 may determine whether the two or more signals areinterrelated. In an embodiment, a mean correlation value of the spectraldecomposition of each signal may indicate the two or more signals areinterrelated. As an example, a mean correlation of each signal maygenerate a value between 0.0 and 1, and the processor 214 may comparethe mean correlation value to a threshold, such as a threshold of 0.75.In such an example, a mean correlation value at or above the thresholdmay indicate the signals are interrelated while a mean correlation valuebelow the threshold may indicate the signals are not interrelated andmay be different signals. In an embodiment, the mean correlation valuemay be generated by running a full energy bandwidth correlation of eachsignal, measuring the values of signal transition for each signal, andfor each signal transition running a spectral correlation betweensignals to generate the mean correlation value. If the signals are notinterrelated (i.e., determination block 904=“No”), the signals may betwo or more different signals, and in block 907 processor 214 maymeasure the interference between the two or more signals. In an optionalembodiment, in optional block 909 the processor 214 may generate aconflict alarm indicating the two or more different signals interfere.In an embodiment, the conflict alarm may be sent to the history databaseand/or a display. In determination block 902 the processor 214 maycontinue to determine whether two or more signals are detected. If thetwo signal are interrelated (i.e., determination block 904=“Yes”), inblock 905 the processor 214 may identify the two or more signals as asingle signal. In block 906 the processor 214 may combine signal datafor the two or more signals into a signal single entry in the historydatabase. In determination block 908 the processor 214 may determinewhether the signals mean averages. If the mean averages (i.e.,determination block 908=“Yes”), the processor 214 may identify thesignal as having multiple channels. If the mean does not average (i.e.,determination block 908=“Yes”) or after identifying the signal as havingmultiple channels, in block 914 the processor 214 may determine andstore protocol data for the signal. In block 916 the processor 214 maydetermine and store symbol timing data for the signal, and the method900 may return to block 902.

FIG. 10 illustrates a process flow of an embodiment method 1000 forcalculating signal degradation data. In an embodiment, the operations ofmethod 1000 may be performed by the processor 214 of a spectrummanagement device 202. In block 1002 the processor may detect a signal.In block 1004 the processor 214 may match the signal to a signal in astatic database. In block 1006 the processor 214 may determine noisefigure parameters based on data in the static database 236 associatedwith the signal. As an example, the processor 214 may determine thenoise figure of the signal based on parameters of a transmitteroutputting the signal according to the static database 236. In block1008 the processor 214 may determine hardware parameters associated withthe signal in the static database 236. As an example, the processor 214may determine hardware parameters such as antenna position, powersettings, antenna type, orientation, azimuth, location, gain, andequivalent isotropically radiated power (EIRP) for the transmitterassociated with the signal from the static database 236. In block 1010processor 214 may determine environment parameters associated with thesignal in the static database 236. As an example, the processor 214 maydetermine environment parameters such as rain, fog, and/or haze based ona delta correction factor table stored in the static database and aprovided precipitation rate (e.g., mm/hr). In block 1012 the processor214 may calculate and store signal degradation data for the detectedsignal based at least in part on the noise figure parameters, hardwareparameters, and environmental parameters. As an example, based on thenoise figure parameters, hardware parameters, and environmentalparameters free space losses of the signal may be determined. In block1014 the processor 214 may display the degradation data on a display 242of the spectrum management device 202. In a further embodiment, thedegradation data may be used with measured terrain data of geographiclocations stored in the static database to perform pattern distortion,generate propagation and/or next neighbor interference models, determineinterference variables, and perform best fit modeling to aide in signaland/or system optimization.

FIG. 11 illustrates a process flow of an embodiment method 1100 fordisplaying signal and protocol identification information. In anembodiment, the operations of method 1100 may be performed by aprocessor 214 of a spectrum management device 202. In block 1102 theprocessor 214 may compare the signal parameters and protocol data of anidentified signal to signal parameters and protocol data in a historydatabase 232. In an embodiment, a history database 232 may be a databasestoring signal parameters and protocol data for previously identifiedsignals. In block 1104 the processor 214 may determine whether there isa match between the signal parameters and protocol data of theidentified signal and the signal parameters and protocol data in thehistory database 232. If there is not a match (i.e., determination block1104=“No”), in block 1106 the processor 214 may store the signalparameters and protocol data as a new signal in the history database232. If the is a match (i.e., determination block 1104=“Yes”), in block1108 the processor 214 may update the matching signal parameters andprotocol data as needed in the history database 232.

In block 1110 the processor 214 may compare the signal parameters andprotocol data of the identified signal to signal parameters and protocoldata in the signal characteristic listing 236. In determination block1112 the processor 214 may determine whether the signal parameters andprotocol data of the identified signal match any signal parameters andprotocol data in the signal characteristic listing 236. If there is amatch (i.e., determination block 1112=“Yes”), in block 1114 theprocessor 214 may indicate a match in the history database and in block1118 may display an indication of the signal identification and protocolon a display. If there is not a match (i.e., determination block1112=“No”), in block 1116 the processor 214 may display an indicationthat the signal is an unidentified signal. In this manner, the user maybe notified a signal is present in the environment, but that the signaldoes not match to a signal in the characteristic listing.

FIG. 12A is a block diagram of a spectrum management device 1202according to an embodiment. Spectrum management device 1202 is similarto spectrum management device 802 described above with reference to FIG.8A, except that spectrum management device 1202 may include TDOA/FDOAmodule 1204 and modulation module 1206 enabling the spectrum managementdevice 1202 to identify the modulation type employed by a signal ofinterest and calculate signal origins. The modulation module 1206 mayenable the signal processor to determine the modulation applied tosignal, such as frequency modulation (e.g., FSK, MSK, etc.) or phasemodulation (e.g., BPSK, QPSK, QAM, etc.) as well as to demodulate thesignal to identify payload data carried in the signal. The modulationmodule 1206 may use payload data 1221 from the characteristic listing toidentify the data types carried in a signal. As examples, upondemodulating a portion of the signal the payload data may enable theprocessor 214 to determine whether voice data, video data, and/or textbased data is present in the signal. The TDOA/FDOA module 1204 mayenable the signal processor 214 to determine time difference of arrivalfor signals or interest and/or frequency difference of arrival forsignals of interest. Using the TDOA/FDOA information estimates of theorigin of a signal may be made and passed to a mapping module 1225 whichmay control the display 242 to output estimates of a position and/ordirection of movement of a signal.

FIG. 12B is a schematic logic flow block diagram illustrating logicaloperations which may be performed by a spectrum management deviceaccording to an embodiment. Only those logical operations illustrated inFIG. 12B different from those described above with reference to FIG. 8Bwill be discussed. A magnitude squared 1252 operation may be performedon data from the symbol detector 852 to identify whether frequency orphase modulation is present in the signal. Phase modulated signals maybe identified by the phase modulation 1254 processes and frequencymodulated signals may be identified by the frequency modulationprocesses. The modulation information may be passed to a signalparameters, protocols, and modulation module 1258.

FIG. 13 illustrates a process flow of an embodiment method 1300 forestimating a signal origin based on a frequency difference of arrival.In an embodiment, the operations of method 1300 may be performed by aprocessor 214 of a spectrum management device 1202. In block 1302 theprocessor 214 may compute frequency arrivals and phase arrivals formultiple instances of an identified signal. In block 1304 the processor214 may determine frequency difference of arrival for the identifiedsignal based on the computed frequency difference and phase difference.In block 1306 the processor may compare the determined frequencydifference of arrival for the identified signal to data associated withknown emitters in the characteristic listing to estimate an identifiedsignal origin. In block 1308 the processor 214 may indicate theestimated identified signal origin on a display of the spectrummanagement device. As an example, the processor 214 may overlay theestimated origin on a map displayed by the spectrum management device.

FIG. 14 illustrates a process flow of an embodiment method fordisplaying an indication of an identified data type within a signal. Inan embodiment, the operations of method 1400 may be performed by aprocessor 214 of a spectrum management device 1202. In block 1402 theprocessor 214 may determine the signal parameters for an identifiedsignal of interest. In block 1404 the processor 214 may determine themodulation type for the signal of interest. In block 1406 the processor214 may determine the protocol data for the signal of interest. In block1408 the processor 214 may determine the symbol timing for the signal ofinterest. In block 1410 the processor 214 may select a payload schemebased on the determined signal parameters, modulation type, protocoldata, and symbol timing. As an example, the payload scheme may indicatehow data is transported in a signal. For example, data in over the airtelevision broadcasts may be transported differently than data incellular communications and the signal parameters, modulation type,protocol data, and symbol timing may identify the applicable payloadscheme to apply to the signal. In block 1412 the processor 214 may applythe selected payload scheme to identify the data type or types withinthe signal of interest. In this manner, the processor 214 may determinewhat type of data is being transported in the signal, such as voicedata, video data, and/or text based data. In block 1414 the processormay store the data type or types. In block 1416 the processor 214 maydisplay an indication of the identified data types.

FIG. 15 illustrates a process flow of an embodiment method 1500 fordetermining modulation type, protocol data, and symbol timing data.Method 1500 is similar to method 900 described above with reference toFIG. 9, except that modulation type may also be determined. In anembodiment, the operations of method 1500 may be performed by aprocessor 214 of a spectrum management device 1202. In blocks 902, 904,905, 906, 908, and 910 the processor 214 may perform operations of likenumbered blocks of method 900 described above with reference to FIG. 9.In block 1502 the processor may determine and store a modulation type.As an example, a modulation type may be an indication that the signal isfrequency modulated (e.g., FSK, MSK, etc.) or phase modulated (e.g.,BPSK, QPSK, QAM, etc.). As discussed above, in block 914 the processormay determine and store protocol data and in block 916 the processor maydetermine and store timing data.

In an embodiment, based on signal detection, a time tracking module,such as a TDOA/FDOA module 1204, may track the frequency repetitioninterval at which the signal is changing. The frequency repetitioninterval may also be tracked for a burst signal. In an embodiment, thespectrum management device may measure the signal environment and setanchors based on information stored in the historic or static databaseabout known transmitter sources and locations. In an embodiment, thephase information about a signal be extracted using a spectraldecomposition correlation equation to measure the angle of arrival(“AOA”) of the signal. In an embodiment, the processor of the spectrummanagement device may determine the received power as the ReceivedSignal Strength (“RSS”) and based on the AOA and RSS may measure thefrequency difference of arrival. In an embodiment, the frequency shiftof the received signal may be measured and aggregated over time. In anembodiment, after an initial sample of a signal, known transmittedsignals may be measured and compared to the RSS to determine frequencyshift error. In an embodiment, the processor of the spectrum managementdevice may compute a cross ambiguity function of aggregated changes inarrival time and frequency of arrival. In an additional embodiment, theprocessor of the spectrum management device may retrieve FFT data for ameasured signal and aggregate the data to determine changes in time ofarrival and frequency of arrival. In an embodiment, the signalcomponents of change in frequency of arrival may be averaged through aKalman filter with a weighted tap filter from 2 to 256 weights to removemeasurement error such as noise, multipath interference, etc. In anembodiment, frequency difference of arrival techniques may be appliedwhen either the emitter of the signal or the spectrum management deviceare moving or when then emitter of the signal and the spectrummanagement device are both stationary. When the emitter of the signaland the spectrum management device are both stationary the determinationof the position of the emitter may be made when at least four knownother known signal emitters positions are known and signalcharacteristics may be available. In an embodiment, a user may providethe four other known emitters and/or may use already in place knownemitters, and may use the frequency, bandwidth, power, and distancevalues of the known emitters and their respective signals. In anembodiment, where the emitter of the signal or spectrum managementdevice may be moving, frequency deference of arrival techniques may beperformed using two known emitters.

FIG. 16 illustrates an embodiment method for tracking a signal origin.In an embodiment, the operations of method 1600 may be performed by aprocessor 214 of a spectrum management device 1202. In block 1602 theprocessor 214 may determine a time difference of arrival for a signal ofinterest. In block 1604 the processor 214 may determine a frequencydifference of arrival for the signal interest. As an example, theprocessor 214 may take the inverse of the time difference of arrival todetermine the frequency difference of arrival of the signal of interest.In block 1606 the processor 214 may identify the location. As anexample, the processor 214 may determine the location based oncoordinates provided from a GPS receiver. In determination block 1608the processor 214 may determine whether there are at least four knownemitters present in the identified location. As an example, theprocessor 214 may compare the geographic coordinates for the identifiedlocation to a static database and/or historical database to determinewhether at least four known signals are within an area associated withthe geographic coordinates. If at least four known emitters are present(i.e., determination block 1608=“Yes”), in block 1612 the processor 214may collect and measure the RSS of the known emitters and the signal ofinterest. As an example, the processor 214 may use the frequency,bandwidth, power, and distance values of the known emitters and theirrespective signals and the signal of interest. If less than four knownemitters are present (i.e., determination block 1608=“No”), in block1610 the processor 214 may measure the angle of arrival for the signalof interest and the known emitter. Using the RSS or angle or arrival, inblock 1614 the processor 214 may measure the frequency shift and inblock 1616 the processor 214 may obtain the cross ambiguity function. Indetermination block 1618 the processor 214 may determine whether thecross ambiguity function converges to a solution. If the cross ambiguityfunction does converge to a solution (i.e., determination block1618=“Yes”), in block 1620 the processor 214 may aggregate the frequencyshift data. In block 1622 the processor 214 may apply one or more filterto the aggregated data, such as a Kalman filter. Additionally, theprocessor 214 may apply equations, such as weighted least squaresequations and maximum likelihood equations, and additional filters, suchas a non-line-of-sight (“NLOS”) filters to the aggregated data. In anembodiment, the cross ambiguity function may resolve the position of theemitter of the signal of interest to within 3 meters. If the crossambiguity function does not converge to a solution (i.e., determinationblock 1618=“No”), in block 1624 the processor 214 may determine the timedifference of arrival for the signal and in block 1626 the processor 214may aggregate the time shift data. Additionally, the processor mayfilter the data to reduce interference. Whether based on frequencydifference of arrival or time difference of arrival, the aggregated andfiltered data may indicate a position of the emitter of the signal ofinterest, and in block 1628 the processor 214 may output the trackinginformation for the position of the emitter of the signal of interest toa display of the spectrum management device and/or the historicaldatabase. In an additional embodiment, location of emitters, time andduration of transmission at a location may be stored in the historydatabase such that historical information may be used to perform andpredict movement of signal transmission. In a further embodiment, theenvironmental factors may be considered to further reduce the measurederror and generate a more accurate measurement of the location of theemitter of the signal of interest.

The processor 214 of spectrum management devices 202, 802 and 1202 maybe any programmable microprocessor, microcomputer or multiple processorchip or chips that can be configured by software instructions(applications) to perform a variety of functions, including thefunctions of the various embodiments described above. In some devices,multiple processors may be provided, such as one processor dedicated towireless communication functions and one processor dedicated to runningother applications. Typically, software applications may be stored inthe internal memory 226 or 230 before they are accessed and loaded intothe processor 214. The processor 214 may include internal memorysufficient to store the application software instructions. In manydevices the internal memory may be a volatile or nonvolatile memory,such as flash memory, or a mixture of both. For the purposes of thisdescription, a general reference to memory refers to memory accessibleby the processor 214 including internal memory or removable memoryplugged into the device and memory within the processor 214 itself.

The foregoing method descriptions and the process flow diagrams areprovided merely as illustrative examples and are not intended to requireor imply that the steps of the various embodiments must be performed inthe order presented. As will be appreciated by one of skill in the artthe order of steps in the foregoing embodiments may be performed in anyorder. Words such as “thereafter,” “then,” “next,” etc. are not intendedto limit the order of the steps; these words are simply used to guidethe reader through the description of the methods. Further, anyreference to claim elements in the singular, for example, using thearticles “a,” “an” or “the” is not to be construed as limiting theelement to the singular.

The various illustrative logical blocks, modules, circuits, andalgorithm steps described in connection with the embodiments disclosedherein may be implemented as electronic hardware, computer software, orcombinations of both. To clearly illustrate this interchangeability ofhardware and software, various illustrative components, blocks, modules,circuits, and steps have been described above generally in terms oftheir functionality. Whether such functionality is implemented ashardware or software depends upon the particular application and designconstraints imposed on the overall system. Skilled artisans mayimplement the described functionality in varying ways for eachparticular application, but such implementation decisions should not beinterpreted as causing a departure from the scope of the presentinvention.

The hardware used to implement the various illustrative logics, logicalblocks, modules, and circuits described in connection with the aspectsdisclosed herein may be implemented or performed with a general purposeprocessor, a digital signal processor (DSP), an application specificintegrated circuit (ASIC), a field programmable gate array (FPGA) orother programmable logic device, discrete gate or transistor logic,discrete hardware components, or any combination thereof designed toperform the functions described herein. A general-purpose processor maybe a microprocessor, but, in the alternative, the processor may be anyconventional processor, controller, microcontroller, or state machine. Aprocessor may also be implemented as a combination of computing devices,e.g., a combination of a DSP and a microprocessor, a plurality ofmicroprocessors, one or more microprocessors in conjunction with a DSPcore, or any other such configuration. Alternatively, some steps ormethods may be performed by circuitry that is specific to a givenfunction.

In one or more exemplary aspects, the functions described may beimplemented in hardware, software, firmware, or any combination thereof.If implemented in software, the functions may be stored as one or moreinstructions or code on a non-transitory computer-readable medium ornon-transitory processor-readable medium. The steps of a method oralgorithm disclosed herein may be embodied in a processor-executablesoftware module which may reside on a non-transitory computer-readableor processor-readable storage medium. Non-transitory computer-readableor processor-readable storage media may be any storage media that may beaccessed by a computer or a processor. By way of example but notlimitation, such non-transitory computer-readable or processor-readablemedia may include RAM, ROM, EEPROM, FLASH memory, CD-ROM or otheroptical disk storage, magnetic disk storage or other magnetic storagedevices, or any other medium that may be used to store desired programcode in the form of instructions or data structures and that may beaccessed by a computer. Disk and disc, as used herein, includes compactdisc (CD), laser disc, optical disc, digital versatile disc (DVD),floppy disk, and blu-ray disc where disks usually reproduce datamagnetically, while discs reproduce data optically with lasers.Combinations of the above are also included within the scope ofnon-transitory computer-readable and processor-readable media.Additionally, the operations of a method or algorithm may reside as oneor any combination or set of codes and/or instructions on anon-transitory processor-readable medium and/or computer-readablemedium, which may be incorporated into a computer program product.

The preceding description of the disclosed embodiments is provided toenable any person skilled in the art to make or use the presentinvention. Various modifications to these embodiments will be readilyapparent to those skilled in the art, and the generic principles definedherein may be applied to other embodiments without departing from thespirit or scope of the invention. Thus, the present invention is notintended to be limited to the embodiments shown herein but is to beaccorded the widest scope consistent with the following claims and theprinciples and novel features disclosed herein.

What is claimed is:
 1. A spectrum management device, comprising: a radiofrequency (RF) receiver; a location receiver; a memory; a display; and aprocessor coupled to the RF receiver, location receiver, memory, anddisplay, wherein the processor is configured with processor-executableinstructions to perform operations comprising: receiving a locationinput from the location receiver; determining a location of the spectrummanagement device based on the received location input; receiving RFenergy measurements from the RF receiver; determining a time associatedwith the RF energy measurements; converting the received RF energymeasurements into spectral representation data; analyzing the spectralrepresentation data to identify two or more signals above a powerthreshold; determining whether the two or more signals are interrelated;identifying the two or more signals as a single signal in response todetermining the two or more signals are interrelated; analyzing thespectral representation data associated with two or more signals uponidentifying the two or more signals as the single signal to identifyprotocol data associated with the single signal; determining a signalparameter of the single signal; storing the signal parameter, theprotocol data, the location of the spectrum management device, and thetime associated with the RF energy measurements in a history database inthe memory; comparing the signal parameter and the protocol data of thesingle signal to a signal characteristic listing in the memorycorrelating signal parameters, protocols, and signal identifications todetermine whether the signal parameter and protocol data of theidentified single signal matches a signal parameter and protocol in thesignal characteristic listing; and displaying, on the display, anindication of the signal identification correlated to the signalparameter and protocol in the signal characteristic listing in responseto determining the signal parameter and protocol data of the identifiedsingle signal matches a signal parameter and protocol in the signalcharacteristic listing.
 2. The spectrum management device of claim 1,wherein: the RF receiver generates RF energy measurements over a rangefrom 9 kHz to 6 GHz; the spectral representation data comprises I and Qdata; and wherein the processor is configured with processor-executableinstruction to perform operations such that converting the received RFenergy measurements into spectral representation data comprises applyinga Fast Fourier Transform to the received RF energy measurements.
 3. Thespectrum management device of claim 2, wherein the processor isconfigured with processor-executable instruction to perform operationsuch that analyzing the spectral representation data associated with twoor more signals upon identifying the two or more signals as the singlesignal to identify protocol data associated with the single signalcomprises: determining an access scheme associated with the singlesignal; determining one or more channels associated with the singlesignal; and determining a modulation type associate with the singlesignal.
 4. The spectrum management device of claim 3, wherein theprocessor is configured with processor-executable instruction to performoperations such that determining a signal parameter of the identifiedsignal comprises determining at least one of a frequency peak of theidentified signal, a peak power of the identified signal, an averagepower of the identified signal, a signal bandwidth of the identifiedsignal, and a signal duration of the identified signal.
 5. The spectrummanagement device of claim 1, wherein the processor is configured withprocessor-executable instruction to perform operations furthercomprising: determining a symbol rate of the single signal; and storingthe symbol rate of the single signal in the history database in thememory.
 6. The spectrum management device of claim 1, wherein theprocessor is configured with processor-executable instruction to performoperations further comprising: determining an environmental parameterassociated with the single signal based on the signal characteristiclisting; determining a hardware parameter associated with the singlesignal based on the signal characteristic listing; determining a noisefigure parameter associated with the single signal based on the signalcharacteristic listing; calculating signal degradation data for thesingle signal based on the environmental parameter, the hardwareparameter, and the noise figure parameter; storing the signaldegradation data in the history database; and displaying the degradationdata on the display.
 7. A spectrum management method, comprising:receiving a location input from a location receiver; determining alocation of a spectrum management device based on the received locationinput; receiving RF energy measurements from an RF receiver; determininga time associated with the RF energy measurements; converting thereceived RF energy measurements into spectral representation data;analyzing the spectral representation data to identify two or moresignals above a power threshold; determining whether the two or moresignals are interrelated; identifying the two or more signals as asingle signal in response to determining the two or more signals areinterrelated; analyzing the spectral representation data associated withtwo or more signals upon identifying the two or more signals as thesingle signal to identify protocol data associated with the singlesignal; determining a signal parameter of the single signal; storing thesignal parameter, the protocol data, the location of the device, and thetime associated with the RF energy measurements in a history database;comparing the signal parameter and the protocol data of the singlesignal to a signal characteristic listing correlating signal parameters,protocols, and signal identifications to determine whether the signalparameter and protocol data of the identified single signal matches asignal parameter and protocol in the signal characteristic listing; anddisplaying an indication of the signal identification correlated to thesignal parameter and protocol in the signal characteristic listing inresponse to determining the signal parameter and protocol data of theidentified single signal matches a signal parameter and protocol in thesignal characteristic listing.
 8. The method of claim 7, wherein: the RFreceiver generates RF energy measurements over a range from 9 kHz to 6GHz; the spectral representation data comprises I and Q data; andwherein the processor is configured with processor-executableinstruction to perform operations such that converting the received RFenergy measurements into spectral representation data comprises applyinga Fast Fourier Transform to the received RF energy measurements.
 9. Themethod of claim 8, wherein analyzing the spectral representation dataassociated with two or more signals upon identifying the two or moresignals as the single signal to identify protocol data associated withthe single signal comprises: determining an access scheme associatedwith the single signal; determining one or more channels associated withthe single signal; and determining a modulation type associate with thesingle signal.
 10. The method of claim 9, wherein determining a signalparameter of the identified signal comprises determining at least one ofa frequency peak of the identified signal, a peak power of theidentified signal, an average power of the identified signal, a signalbandwidth of the identified signal, and a signal duration of theidentified signal.
 11. The method of claim 7, further comprising:determining a symbol rate of the single signal; and storing the symbolrate of the single signal in the history database.
 12. The method ofclaim 7, further comprising: determining an environmental parameterassociated with the single signal based on the signal characteristiclisting; determining a hardware parameter associated with the singlesignal based on the signal characteristic listing; determining a noisefigure parameter associated with the single signal based on the signalcharacteristic listing; calculating signal degradation data for thesingle signal based on the environmental parameter, the hardwareparameter, and the noise figure parameter; storing the signaldegradation data in the history database; and displaying the degradationdata.
 13. A non-transitory processor readable medium having storedthereon processor-executable instructions configured to cause aprocessor to perform operations comprising: receiving a location inputfrom a location receiver; determining a location of a spectrummanagement device based on the received location input; receiving RFenergy measurements from an RF receiver; determining a time associatedwith the RF energy measurements; converting the received RF energymeasurements into spectral representation data; analyzing the spectralrepresentation data to identify two or more signals above a powerthreshold; determining whether the two or more signals are interrelated;identifying the two or more signals as a single signal in response todetermining the two or more signals are interrelated; analyzing thespectral representation data associated with two or more signals uponidentifying the two or more signals as the single signal to identifyprotocol data associated with the single signal; determining a signalparameter of the single signal; storing the signal parameter, theprotocol data, the location of the device, and the time associated withthe RF energy measurements in a history database; comparing the signalparameter and the protocol data of the single signal to a signalcharacteristic listing correlating signal parameters, protocols, andsignal identifications to determine whether the signal parameter andprotocol data of the identified single signal matches a signal parameterand protocol in the signal characteristic listing; and displaying anindication of the signal identification correlated to the signalparameter and protocol in the signal characteristic listing in responseto determining the signal parameter and protocol data of the identifiedsingle signal matches a signal parameter and protocol in the signalcharacteristic listing.
 14. The non-transitory processor readable mediumof claim 13, wherein the stored processor-executable instructions areconfigured to cause a processor to perform operations such that: the RFreceiver generates RF energy measurements over a range from 9 kHz to 6GHz; the spectral representation data comprises I and Q data; andwherein the processor is configured with processor-executableinstruction to perform operations such that converting the received RFenergy measurements into spectral representation data comprises applyinga Fast Fourier Transform to the received RF energy measurements.
 15. Thenon-transitory processor readable medium of claim 14, wherein the storedprocessor-executable instructions are configured to cause a processor toperform operations such that analyzing the spectral representation dataassociated with two or more signals upon identifying the two or moresignals as the single signal to identify protocol data associated withthe single signal comprises: determining an access scheme associatedwith the single signal; determining one or more channels associated withthe single signal; and determining a modulation type associate with thesingle signal.
 16. The non-transitory processor readable medium of claim15, wherein the stored processor-executable instructions are configuredto cause a processor to perform operations such that determining asignal parameter of the identified signal comprises determining at leastone of a frequency peak of the identified signal, a peak power of theidentified signal, an average power of the identified signal, a signalbandwidth of the identified signal, and a signal duration of theidentified signal.
 17. The non-transitory processor readable medium ofclaim 13, wherein the stored processor-executable instructions areconfigured to cause a processor to perform operations furthercomprising: determining a symbol rate of the single signal; and storingthe symbol rate of the single signal in the history database.
 18. Thenon-transitory processor readable medium of claim 13, wherein the storedprocessor-executable instructions are configured to cause a processor toperform operations further comprising: determining an environmentalparameter associated with the single signal based on the signalcharacteristic listing; determining a hardware parameter associated withthe single signal based on the signal characteristic listing;determining a noise figure parameter associated with the single signalbased on the signal characteristic listing; calculating signaldegradation data for the single signal based on the environmentalparameter, the hardware parameter, and the noise figure parameter;storing the signal degradation data in the history database; anddisplaying the degradation data.